It is known to provide apparatus, such as, for example, integrated circuits with built-in diagnostic mechanisms. These diagnostic mechanisms can be used for a variety of different purposes such as, for example, debug, trace, manufacturing test and the like. An example of such built-in diagnostic mechanisms are JTAG serial scan chains used to read and write state within an integrated circuit. As system design develops, the capabilities of built in diagnostic mechanisms also need to develop to keep pace. New diagnostic mechanisms may have greater or preferred functionality over existing diagnostic mechanisms. In this context, there arise situations in which it is necessary or desirable to provide more than one diagnostic mechanism upon a system. An example of such a situation would be a system where it was desired to provide a legacy JTAG diagnostic mechanism in combination with a more modern and capable diagnostic mechanism.
When more than one diagnostic mechanism is provided then this increases the communication requirements to those diagnostic mechanisms. As an example, in the case of an integrated circuit, external pins may be designated to provide diagnostic input and output signals and if more than one diagnostic mechanism is provided then this leads to the requirement for more than one set of such diagnostic input and output pins. However, many modern integrated circuits are pin count constrained and it is disadvantageous to have to dedicate so many input and output pins to diagnostic uses, as such pins are then not available for functional use. One possibility might be to share some of the diagnostic pins and provide a switching pin to which an external signal is applied to switch between the different diagnostic mechanisms inside the integrated circuit. However, the need to dedicate a pin to this switching function is in itself disadvantageous as it consumes a pin which could be used for other purposes.